翻訳と辞書
Words near each other
・ Snapper Kennedy
・ Snapper Ledge
・ Snapper Music
・ Snapper Puzzle
・ Snapper Rocks
・ Snapphanar (miniseries)
・ Snapphane
・ Snappin' Necks
・ Snapping hip syndrome
・ Snapping scapula syndrome
・ Snapple
・ Snapple Theater Center
・ Snapplify
・ Snappy
・ Snappy (package manager)
Snappy (software)
・ Snappy Dance Theater
・ Snappy Sammy Smoot
・ Snappy Snaps
・ Snappy Tomato Pizza
・ Snaps
・ Snaps (candy)
・ Snapseed
・ Snapshot
・ Snapshot (computer storage)
・ Snapshot (Daryl Braithwaite album)
・ Snapshot (film)
・ Snapshot (Mission of Burma album)
・ Snapshot (photography)
・ Snapshot (Roger Glover album)


Dictionary Lists
翻訳と辞書 辞書検索 [ 開発暫定版 ]
スポンサード リンク

Snappy (software) : ウィキペディア英語版
Snappy (software)

Snappy (previously known as Zippy) is a fast data compression and decompression library written in C++ by Google based on ideas from LZ77 and open-sourced in 2011.〔(【引用サイトリンク】 title=Google Snappy–A Fast Compressing Library )〕〔(Google open sources MapReduce compression. In the name of speed ) // The Register, 2011-03-24〕 It does not aim for maximum compression, or compatibility with any other compression library; instead, it aims for very high speeds and reasonable compression. Compression speed is 250 MB/s and decompression speed is 500 MB/s using a single core of a Core i7 processor running in 64-bit mode. The compression ratio is 20–100% lower than gzip.〔(【引用サイトリンク】 title=Snappy: A fast compressor/decompressor: Readme )
Snappy is widely used in Google projects like BigTable, MapReduce and in compression data in Google's internal RPC systems. It can be used in open-source projects like Cassandra, Hadoop, LevelDB, MongoDB, RocksDB, Lucene.〔(snappy. A fast compressor/decompressor ) - Project page at Google Code〕 Decompression is tested to detect any errors in the compressed stream. Snappy does not use inline assembler and is portable.
== Stream format ==
Snappy encoding is not bit-oriented, but byte-oriented (only whole bytes are emitted or consumed from a stream). The format uses no entropy encoder, like Huffman tree or arithmetic encoder.
The first bytes of the stream are the length of uncompressed data, stored as a little-endian varint, which allows for variable-length encoding. The lower seven bits of each byte are used for data and the high bit is a flag which tells if the next byte is used for the same integer.
The remaining bytes in the stream are encoded using one of four element types. The element type is encoded in the first byte (''tag byte'') of the element. The two lower bits of this byte is the type code:〔https://github.com/google/snappy/blob/master/format_description.txt〕
* 00 – ''Literal'' – uncompressed data; upper 6 bits are used to store length of data; if the length of data is more 60 bytes, additional variable-length encoding is added
* 01 – Copy with length stored as 3 bits and offset stored as 11 bits; one byte after tag byte is used for part of offset;
* 10 – Copy with length stored as 6 bits of tag byte and offset stored as two-byte integer after the tag byte;
* 11 – Copy with length stored as 6 bits of tag byte and offset stored as four-byte little-endian integer after the tag byte;
The copy refers to the dictionary (just-decompressed data). The offset is the shift from the current position back to the already decompressed stream. The length is the number of bytes to copy from the dictionary. The size of the dictionary was limited by the 1.0 Snappy compressor to 32768 bytes, and updated to 65536 in version 1.1.

抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)
ウィキペディアで「Snappy (software)」の詳細全文を読む



スポンサード リンク
翻訳と辞書 : 翻訳のためのインターネットリソース

Copyright(C) kotoba.ne.jp 1997-2016. All Rights Reserved.